home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / sun / print / PeekGraphics$ImageWaiter.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  1000 b   |  52 lines

  1. package sun.print;
  2.  
  3. import java.awt.Image;
  4. import java.awt.image.ImageObserver;
  5.  
  6. public class PeekGraphics$ImageWaiter implements ImageObserver {
  7.    private int mWidth;
  8.    private int mHeight;
  9.    private boolean badImage;
  10.    // $FF: synthetic field
  11.    final PeekGraphics this$0;
  12.  
  13.    PeekGraphics$ImageWaiter(PeekGraphics var1, Image var2) {
  14.       this.this$0 = var1;
  15.       this.badImage = false;
  16.       this.waitForDimensions(var2);
  17.    }
  18.  
  19.    public int getWidth() {
  20.       return this.mWidth;
  21.    }
  22.  
  23.    public int getHeight() {
  24.       return this.mHeight;
  25.    }
  26.  
  27.    private synchronized void waitForDimensions(Image var1) {
  28.       this.mHeight = var1.getHeight(this);
  29.  
  30.       for(this.mWidth = var1.getWidth(this); !this.badImage && (this.mWidth < 0 || this.mHeight < 0); this.mWidth = var1.getWidth(this)) {
  31.          try {
  32.             Thread.sleep(50L);
  33.          } catch (InterruptedException var3) {
  34.          }
  35.  
  36.          this.mHeight = var1.getHeight(this);
  37.       }
  38.  
  39.       if (this.badImage) {
  40.          this.mHeight = 0;
  41.          this.mWidth = 0;
  42.       }
  43.  
  44.    }
  45.  
  46.    public synchronized boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
  47.       boolean var7 = (var2 & 194) != 0;
  48.       this.badImage = (var2 & 192) != 0;
  49.       return var7;
  50.    }
  51. }
  52.